Systems and Methods for Providing a Ratings Version and a Dynamic Ad Version of a Video

ABSTRACT

There are provided systems and methods for providing a ratings version and a dynamic ad version of a video using a system having a non-transitory memory and a hardware processor. In an exemplary system, the hardware processor executes an executable code stored in the memory to receive a request for a video over a network, determine a time elapsed since a first broadcast of the video, provide a ratings version of the video over the network for display on the display device if the time elapsed since the first broadcast of the video is not greater than a threshold, and provide a dynamic ad version of the video over the network for display on a display device if the time elapsed since the first broadcast of the video is greater than the threshold.

RELATED APPLICATION(S)

The present application claims the benefit of and priority to a U.S.Provisional Patent Application Ser. No. 62/218,083, filed Sep. 14, 2015and titled “Workflow Enhancement for Video-On-Demand (VOD) Over PacketNetwork,” which is hereby incorporated by reference in its entirety intothe present application.

BACKGROUND

Traditionally, satellite and cable providers receive a long form episodeor movie files from a content creator or provider with baked-inadvertisement (ad) breaks for airing on the satellite or cable channels.Typically, on the fourth day after airing this original version of theepisode or movie, a new long form version of the episode or moviereplaces the original version in the satellite/cable provider'son-demand library. Conventionally, content creators or providers fillthe ad breaks of the new version with generic or baked-in promoinventory, such as ads that promote their family of network'sprogramming.

SUMMARY

The present disclosure is directed to systems and methods for providinga ratings version and a dynamic ad version of a video, substantially asshown in and/or described in connection with at least one of thefigures, as set forth more completely in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a diagram of an exemplary system for providing a ratingsversion and a dynamic ad version of a video, according to oneimplementation of the present disclosure;

FIG. 2 shows an exemplary timeline depicting use of the system of FIG.1, according to one implementation of the present disclosure;

FIG. 3 shows a flowchart illustrating an exemplary method of providing aratings version and a dynamic ad version of a video, according to oneimplementation of the present disclosure; and

FIG. 4 shows a flowchart illustrating an exemplary method of providing aratings version and a dynamic ad version of a video, according to oneimplementation of the present disclosure.

DETAILED DESCRIPTION

The following description contains specific information pertaining toimplementations in the present disclosure. The drawings in the presentapplication and their accompanying detailed description are directed tomerely exemplary implementations. Unless noted otherwise, like orcorresponding elements among the figures may be indicated by like orcorresponding reference numerals. Moreover, the drawings andillustrations in the present application are generally not to scale, andare not intended to correspond to actual relative dimensions.

FIG. 1 shows a diagram of an exemplary system for providing a ratingsversion and a dynamic ad version of a video, according to oneimplementation of the present disclosure. System 100 includes computingdevice 110, network 185, and media device 193. Computing device 110includes processor 120 and memory 130. Processor 120 is a hardwareprocessor, such as a central processing unit (CPU) used in computingdevices. Memory 130 is a non-transitory storage device for storingcomputer code for execution by processor 120, and also storing variousdata and parameters. Memory 130 includes executable code 140 and videodatabase 150.

Executable code 140 is an executable code stored in memory 130 forexecution by processor 120 to provide videos to media device 193 overnetwork 185. Executable code 140 may receive a request for a video frommedia device 193 and check for the availability of the requested videoin video database 150, filter the available videos based on criteriasuch as an time elapsed since a first broadcast of the video, andprovide the media device access to the video over the network. In someimplementations, executable code 140 may additionally retrieveconfigurations from video database 150, such as media contentconfigurations and/or media device configurations, and apply theconfigurations to the video and/or media device 193. In someimplementations, executable code 140 may insert advertisements intoadvertisement blocks of dynamic ad version 157. Advertisements insertedinto advertising blocks of dynamic ad version 157 may be differentadvertisements than those that were included in ratings version 155, andmay include new advertisements, e.g., network specific advertisements.Executable code 140 may make real-time updates to the catalog of videosavailable in video database 150.

Video database 150 is a database storing a plurality of videos and maycomprise a video library of a content provider. Video database 150 mayinclude different versions of a video, such as ratings version 155 anddynamic ad version 157. Ratings version 155 may be a video withadvertisements included, such that ratings version 155 is substantiallythe same as a version of the video that is broadcast by a broadcastcompany, such as an over-the-air broadcast network, a cable broadcastnetwork, a satellite broadcast network, etc. In some implementations,ratings version may include an identifying feature to enable tracking ofthe number of times the video is viewed, such as an audio watermark orany other watermark. An audio watermark may be an electronic identifierembedded in an audio signal, and may be used to track ratings for videossuch as television shows. In some implementations, ratings version 155may include a Nielson watermark. The ratings version of a video, such asratings version 155, may be broadcast during a time window following thefirst broadcast of the video, which may be three days, and ratingsversion 155 may be referred to as a C3 asset. Video database 150 may beon a media server, and in some implementations, may be on a separatemedia server such as a cloud server.

Dynamic ad version 157 may be a video with no advertisements included.In some implementations, dynamic ad version 157 may include a pluralityof advertisement blocks where advertisements were included in theoriginal version that is broadcast by a broadcast company. Dynamic adversion 157 may include blank spaces identifying where executable code140 may insert advertisements and may be referred to as a clean versionof the video or a clean asset. The clean version of a video may bebroadcast after the window for measuring television ratings has passed,which may be three days, and dynamic ad version 157 may be referred toas a D4 asset. In some implementations, each playback of dynamic adversion 157 may include a unique combination of advertisements and maypresent a unique advertisement experience. In other implementations,dynamic ad version 157 may be a clean version of the video that does notcarry any advertising or promotional messaging with only blank spaceswhere the advertising breaks occur, enabling the content provider tochoose and insert advertisements or provide the video withoutadvertisements. Dynamic ad version 157 may additionally be used as afallback video to ensure that a version of a video will be availablewhen requested by media device 193. In some implementations, dynamic adversion 157 may be provided without advertisements, for example, to acustomer with a paid subscription providing access to advertisement-freeshows.

Network 185 is a computer network, such as a packet network, e.g. theInternet. Computing device 110 may communicate with network 185 viacommunication link 177, and media device 193 may communicate withnetwork 185 via communication link 187. In some implementations,communication link 177 may include a wired connection and/or a wirelessconnection. In some implementations, communication link 187 may includea wired connection and/or a wireless connection. Media device 193 is adevice suitable for receiving videos, such as ratings version 155 anddynamic ad version 157. In some implementations, media device 193 may bea set-top box, such as a cable provider set-top box or a satelliteprovider set-top box. In other implementations, media device 193 may bea television, a smart television, a computer, a tablet computer, a smartphone, or other network connectable device capable of receiving video.Media device 193 may include a display suitable for displaying videocontent including ratings version 155 and/or dynamic ad version 157. Insome implementations, the display may include a television, a computermonitor, a tablet computer, the display of a smart phone, etc.

FIG. 2 shows an exemplary timeline depicting use of the system of FIG.1, according to one implementation of the present disclosure. Diagram200 shows timeline 205 which begins at first broadcast time 215,representing the first broadcast of the video on a broadcast network. Insome implementations, first broadcast time 215 may be the time fromwhich ratings are measured for the video. For example, some televisionratings may be measured from the fist time a video is broadcast andinclude subsequent video on demand (VOD) viewings for three days or anypredetermined period of time after the first broadcast time.

According to FIG. 2, video request 225 by media device 293 to computingdevice 210 occurs after first broadcast time 215, but before thresholdtime 223. In response, processor 120 executes executable code 140 tosearch video database 150 for the requested video, and because videorequest 225 has occurred before threshold time 223, computing device 210returns ratings version 255 to media device 293. FIG. 2 also shows videorequest 227 by media device 293 to computing device 210, which occursafter threshold time 223. In response, processor 120 executes executablecode 140 to search video database 150 for the requested video, andbecause video request 22 has occurred after threshold time 223,computing device 210 returns dynamic ad version 257 to media device 293.

FIG. 3 shows a flowchart illustrating an exemplary method of providing aratings version and a dynamic ad version of a video, according to oneimplementation of the present disclosure. Diagram 300 includes client393 corresponding to media device 193, video application programinterface (API) 340 provided by executable code 140 of computing device110, and video DB 350 corresponding to video database 150 of computingdevice 110.

At 301, client 393 sends a request for a video to computing device 110via video API 340. In some implementations, a user may initiate therequest by selecting a video from a library of videos offered by acontent provider, such as over-the-air broadcast network, a cablebroadcast network, a satellite broadcast network, etc., and may be avideo that is used to measure television ratings. Each video on in videoDB 350 may include a unique identifier, such as an external uniqueepisode identification (ID). External unique episode IDs may be uniqueidentifiers for TV programs and movies, such as a Tribune Media Services(TMS) ID, and may allow client 393 to schedule data and on-demand Videocatalogs, such as video DB 350.

At 302, processor 120 of computing device 110 retrieves a list of activevideos from video database 350. The list may include videos withbroadcast advertisements, such as ratings version 155, and videos withblank advertisement blocks, such as dynamic ad version 157. In someimplementations, the list of active videos retrieved from video DB 350may include multiple versions of the same video. For example, the listof active videos may include a ratings version of a first video for usebefore a threshold and a dynamic ad version of the first video for useafter the threshold.

At 303, processor 120 of computing device 110 retrieves showconfigurations from video database 150. In some implementations, showconfigurations may include a threshold for measuring ratings of therequested video, or the configurations may include a date range forshowing a rating calculation version of the video, such as ratingsversion 155, and excluding dynamic advertisement versions, such asdynamic ad version 157. The threshold may be a time after a contentprovider first broadcasts a video before which the content provider mayreceive ratings credit for each viewing of the video.

At 304, processor 120 of computing device 110 applies the showconfigurations as a filter to the list of active videos retrieved fromvideo BD 150. In some implementations, one or more of the videos of thelist of active videos retrieved from video DB 150 may include broadcastadvertisements. Processor 120 of computing device 110 may filter outshows with broadcast advertisements, such as ratings version 155, fromthe list of active videos if the video has surpassed the date range setin the show configurations. For example, processor 120 of computingdevice 110 may filter out or remove a ratings version, such as ratingsversion 155, video having a date range or threshold of three days if thetime elapsed since the video was first broadcast is greater than threedays.

At 305, processor 120 of computing device 110 applies the showconfigurations as a filter to the list of active videos remaining afterratings version videos surpassing the date range set in the showconfigurations have been removed.

In some implementations, one or more of the videos of the list of activevideos retrieved from video database 150 may include dynamicadvertisements. Processor 120 of computing device 110 may filter out orremove videos with dynamic advertisements, such as dynamic ad version157, from the list of active videos if the video is within the daterange set in the show configurations. For example, processor 120 ofcomputing device 110 may remove a video, such as dynamic ad version 157,having a date range or threshold of three days if the time elapsed sincethe video was first broadcast is less than three days and the videoincludes dynamic advertisements.

In the event that video DB 350 does not have show configurations for theshow, processor 120 of computing device 110 may retrieve deviceconfigurations from video DB 350 and may apply the device configurationsto the list of active videos. At 306, processor 120 of computing device110 retrieves device configurations from video DB 350. Deviceconfigurations may enable device-level control of playback of videosfrom video database 150. In some implementations, device configurationsmay not enable processor 120 of computing device 110 from playing anavailable ratings version of a show, such as ratings version 155, ordevice configurations may include settings allowing processor 120 ofcomputing device 110 to play shows including advertisements that arewithin a date range, such as ratings version 155.

Device configurations may include a date range during which to displaybroadcast advertisements and a date range during which to displayadvertisements dynamically inserted into the show. In someimplementations, the device configurations may include a threshold formeasuring ratings of the requested video, or the device configurationsmay include a date range for showing a rating calculation version of thevideo, such as ratings version 155, and excluding dynamic advertisementversions, such as dynamic ad version 157. In some implementations,processor 120 of computing device 110 may remove from the video listthose shows with broadcast ads that have surpassed the date range set inthe device configurations. In some implementations, processor 120 ofcomputing device 110 may apply the device configurations to the list ofactive videos to remove from the video list those shows with dynamic adsthat fall within the date range set in the device configuration.

At 307, processor 120 of computing device 110 applies deviceconfigurations as a filter to the active video list. In someimplementations, one or more videos remaining on the active video listmay not include show configurations. Video API 340 may remove or filterout videos with dynamic advertisements, such as dynamic ad version 157,from the list of active videos if the video is within the date range setin the show configurations.

At 308, processor 120 of computing device 110 applies deviceconfigurations as a filter to the active video list. In someimplementations, one or more videos remaining on the active video listmay not include show configurations and may include dynamicadvertisements. Video API 340 may remove or filter out videos withdynamic advertisements, such as dynamic ad version 157, from the list ofactive videos if the video is within the date range set in the deviceconfigurations.

At 309, processor 120 of computing device 110 provides the remaininglist of active videos to client 393. In some implementations, providingthe remaining videos to client 393 may include transmitting ratingsversion 155 and/or dynamic ad version 157 to client 393. Providing theremaining list of active videos to client 393 may include streamingratings version 155 and/or dynamic ad version 157 to client 393. Inother implementations, providing the remaining videos to client 340 mayinclude transmitting a verifiable token to client 393, such as a uniformresource locator (URL) to access the requested video. The URL may be alimited access URL and may expire after an access window, such as oneminute, two minutes, five minute, etc.

FIG. 4 shows a flowchart illustrating an exemplary method of providing aratings version and a dynamic ad version of a video, according to oneimplementation of the present disclosure. Diagram 400 includes client493 corresponding to media device 193, video API 440 provided byexecutable code 140, and video DB 450 corresponding to video database150.

At 401, client 493 sends a request for a video to computing device 110via video API 440. In some implementations, a user may initiate therequest by selecting a video from a library of videos offered by acontent provider, such as over-the-air broadcast network, a cablebroadcast network, a satellite broadcast network, etc., and may be avideo that is used to measure television ratings. Each video on in videoDB 450 may include a unique identifier, such as an external uniqueepisode identification (ID). External unique episode IDs may be uniqueidentifiers for TV programs and movies, such as a TMS ID, and may allowclient 493 to schedule data and on-demand video catalogs, such as videoDB 450.

At 402, processor 120 of computing device 110 retrieves a list of activevideos from video DB 150. The list may include videos with broadcastadvertisements, such as ratings version 155, and videos with blankadvertisement blocks, such as dynamic ad version 157. In someimplementations, the list of active videos retrieved from video DB 450may include multiple versions of the same video. For example, the listof active videos may include a ratings version of a first video for usebefore a threshold and a dynamic ad version of the first video for useafter the threshold.

At 403, processor 120 of computing device 110 retrieves showconfigurations from video DB 150. In some implementations, showconfigurations may include a threshold for measuring ratings of therequested video, or the configurations may include a date range forshowing a rating calculation version of the video, such as ratingsversion 155, and excluding dynamic advertisement versions, such asdynamic ad version 157.

At 404, processor 120 of computing device 110 applies the showconfigurations as a filter to the list of active videos retrieved fromvideo DB 150. In some implementations, one or more of the videos of thelist of active videos retrieved from video DB 150 may include broadcastadvertisements. Video API 440 may filter out videos with broadcastadvertisements, such as ratings version 155, from the list of activevideos if the video has surpassed the date range set in the showconfigurations. For example, video API 440 may filter out a ratingsversion video, such as ratings version 155, having a date range orthreshold of three days if the time elapsed since the video was firstbroadcast is greater than three days.

At 405, processor 120 of computing device 110 applies the showconfigurations to the list of active videos remaining after ratingsversion videos surpassing the date range set in the show configurationshave been filtered. In some implementations, one or more of the videosof the list of active videos retrieved from video DB 150 may includedynamic advertisements. Processor 120 of computing device 110 may filtervideos with dynamic advertisements, such as dynamic ad version 157, fromthe list of active videos if the video is within the date range set inthe show configurations. For example, processor 120 of computing device110 may filter a video, such as dynamic ad version 157, having a daterange or threshold of three days if the time elapsed since the video wasfirst broadcast is less than three days and the video includes dynamicadvertisements.

At 406, processor 120 of computing device 110 checks the list of activevideos after filtering to see if the requested video remains on the listof available videos. If neither a ratings version nor a dynamic adversion of the video remain on the list, video API 440 may proceed to407, where processor 120 of computing device 110 retrieves a dynamicadvertisement version, such as dynamic ad version 157, from video DB150.

At 408, processor 120 of computing device 110 provides dynamic adversion 157 to client 493. In some implementations, providing theremaining videos to client 493 may include transmitting ratings version155 and/or dynamic ad version 157 to client 493. Providing the remaininglist of active videos to client 493 may include streaming ratingsversion 155 and/or dynamic ad version 157 to client 493. In otherimplementations, providing the remaining videos to client 440 mayinclude transmitting a verifiable token to client 493, such as a URL toaccess the requested video. The URL may be a limited access URL and mayexpire after an access window, such as one minute, two minutes, fiveminute, etc.

From the above description it is manifest that various techniques can beused for implementing the concepts described in the present applicationwithout departing from the scope of those concepts. Moreover, while theconcepts have been described with specific reference to certainimplementations, a person of ordinary skill in the art would recognizethat changes can be made in form and detail without departing from thescope of those concepts. As such, the described implementations are tobe considered in all respects as illustrative and not restrictive. Itshould also be understood that the present application is not limited tothe particular implementations described above, but many rearrangements,modifications, and substitutions are possible without departing from thescope of the present disclosure.

1-20. (canceled)
 21. A system comprising: a non-transitory memorystoring an executable code; and a hardware processor executing theexecutable code to: receive a request for a video from a client deviceover a computer network; determine a time elapsed between an originalbroadcast of the video on a broadcast network and receiving the requestfor the video; in response to the determined time elapsed between theoriginal broadcast of the video on the broadcast network and receivingthe request for the video not being greater than a threshold, provide aratings version of the video over the computer network to a provider fordisplay on the client device, wherein the ratings version comprises anidentifier for tracking a number of views of the video, and furthercomprises baked-in ads, and wherein the threshold is a predeterminedmeasure of time defining a period for reporting television ratingscredit; and in response to the determined time elapsed between theoriginal broadcast of the video on the broadcast network and receivingthe request for the video being greater than the threshold, provide adynamic ad version of the video over the computer network to theprovider for display on the client device, wherein the dynamic adversion includes no ads but blank spaces identifying to the providerwhere to insert new ads.
 22. The system of claim 21, wherein theidentifier comprises a Nielson watermark.
 23. The system of claim 1,wherein providing the ratings version or the dynamic ad version of thevideo includes sending a limited-access URL for accessing the ratingsversion or the dynamic ad version of the video.
 24. The system of claim23, wherein the limited-access URL expires after an access window. 25.The system of claim 21, wherein the hardware processor executes theexecutable code to: provide the dynamic ad version of the video as afallback video.
 26. The system of claim 21, wherein the provider of thevideo does not insert ads into the dynamic ad version of the video forcustomers with paid subscription.
 27. The system of claim 21, whereinthe hardware processor executes the executable code to obtain thethreshold from a show configuration for the video.
 28. The system ofclaim 21, wherein the hardware processor executes the executable codeto: insert a new advertisement in one of the blank spaces of the dynamicad version of the video.
 29. The system of claim 21, wherein thehardware processor executes the executable code to obtain the thresholdfrom a device configuration for the display device.
 30. The system ofclaim 21, wherein the dynamic ad version is without the identifier fortracking the number of views of the video.
 31. A method for use by asystem having a hardware processor and a non-transitory memory storingan executable code, the method comprising: receiving, using the hardwareprocessor executing the executable code, a request for a video from aclient device over a computer network; determining, using the hardwareprocessor executing the executable code, a time elapsed between anoriginal broadcast of the video on a broadcast network and receiving therequest for the video; in response to the determined time elapsedbetween the original broadcast of the video on the broadcast network andreceiving the request for the video not being greater than a threshold,providing, using the hardware processor executing the executable code, aratings version of the video over the computer network to a provider fordisplay on the client device, wherein the ratings version comprises anidentifier for tracking a number of views of the video, and furthercomprises baked-in ads, and wherein the threshold is a predeterminedmeasure of time defining a period for reporting television ratingscredit; and in response to the determined time elapsed between theoriginal broadcast of the video on the broadcast network and receivingthe request for the video being greater than the threshold, providing,using the hardware processor executing the executable code, a dynamic adversion of the video over the computer network to the provider fordisplay on the client device, wherein the dynamic ad version includes noads but blank spaces identifying to the provider where to insert newads.
 32. The method of claim 31, wherein the identifier comprises aNielson watermark.
 33. The method of claim 31, wherein providing theratings version or the dynamic ad version of the video includes sendinga limited-access URL for accessing the ratings version or the dynamic adversion of the video.
 34. The method of claim 33, wherein thelimited-access URL expires after an access window.
 35. The method ofclaim 31 further comprises providing the dynamic ad version of the videoas a fallback video.
 36. The method of claim 31, wherein the provider ofthe video does not insert ads into the dynamic ad version of the videofor customers with paid subscription.
 37. The method of claim 31 furthercomprises obtaining the threshold from a show configuration for thevideo.
 38. The method of claim 31 further comprises inserting a newadvertisement in one of the blank spaces of the dynamic ad version ofthe video.
 39. The method of claim 31 further comprises obtaining thethreshold from a device configuration for the display device.
 40. Themethod of claim 31, wherein the dynamic ad version is without theidentifier for tracking the number of views of the video.